home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
IRIX 6.2 Development Libraries
/
SGI IRIX 6.2 Development Libraries.iso
/
dist
/
complib.idb
/
usr
/
share
/
catman
/
p_man
/
cat3
/
complib
/
DQRDC.z
/
DQRDC
Wrap
Text File
|
1996-03-14
|
4KB
|
133 lines
DDDDQQQQRRRRDDDDCCCC((((3333FFFF)))) DDDDQQQQRRRRDDDDCCCC((((3333FFFF))))
NNNNAAAAMMMMEEEE
DQRDC - DQRDC uses Householder transformations to compute the QR
factorization of an N by P matrix X. Column pivoting based on the 2-
norms of the reduced columns may be performed at the user's option.
SSSSYYYYNNNNOOOOPPPPSSSSYYYYSSSS
SUBROUTINE DQRDC(X,LDX,N,P,QRAUX,JPVT,WORK,JOB)
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
On Entry
XXXX DOUBLE PRECISION(LDX,P), where LDX .GE. N.
X contains the matrix whose decomposition is to be
computed.
LLLLDDDDXXXX INTEGER.
LDX is the leading dimension of the array X.
NNNN INTEGER.
N is the number of rows of the matrix X.
PPPP INTEGER.
P is the number of columns of the matrix X.
JJJJPPPPVVVVTTTT INTEGER(P).
JPVT contains integers that control the selection
of the pivot columns. The K-th column X(K) of X
is placed in one of three classes according to the
value of JPVT(K).
If JPVT(K) .GT. 0, then X(K) is an initial
column.
If JPVT(K) .EQ. 0, then X(K) is a free column.
If JPVT(K) .LT. 0, then X(K) is a final column.
Before the decomposition is computed, initial columns
are moved to the beginning of the array X and final
columns to the end. Both initial and final columns
are frozen in place during the computation and only
free columns are moved. At the K-th stage of the
reduction, if X(K) is occupied by a free column
it is interchanged with the free column of largest
reduced norm. JPVT is not referenced if
JOB .EQ. 0.
WWWWOOOORRRRKKKK DOUBLE PRECISION(P).
WORK is a work array. WORK is not referenced if
JOB .EQ. 0.
JJJJOOOOBBBB INTEGER.
JOB is an integer that initiates column pivoting.
If JOB .EQ. 0, no pivoting is done.
If JOB .NE. 0, pivoting is done. On Return
PPPPaaaaggggeeee 1111
DDDDQQQQRRRRDDDDCCCC((((3333FFFF)))) DDDDQQQQRRRRDDDDCCCC((((3333FFFF))))
XXXX X contains in its upper triangle the upper
triangular matrix R of the QR factorization.
Below its diagonal X contains information from
which the orthogonal part of the decomposition
can be recovered. Note that if pivoting has
been requested, the decomposition is not that
of the original matrix X but that of X
with its columns permuted as described by JPVT.
QQQQRRRRAAAAUUUUXXXX DOUBLE PRECISION(P).
QRAUX contains further information required to recover
the orthogonal part of the decomposition.
JJJJPPPPVVVVTTTT JPVT(K) contains the index of the column of the
original matrix that has been interchanged into
the K-th column, if pivoting was requested. LINPACK. This version
dated 08/14/78 . G. W. Stewart, University of Maryland, Argonne National
Lab.
DDDDQQQQRRRRDDDDCCCC uses the following functions and subprograms. BLAS
DAXPY,DDOT,DSCAL,DSWAP,DNRM2 Fortran DABS,DMAX1,MIN0,DSQRT
PPPPaaaaggggeeee 2222